package com.fengchao.api.dao.svy;


import com.fengchao.api.dao.BaseMapper;
import com.fengchao.model.svy.SvyUserWishRequestResult;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface SvyUserWishRequestResultMapper extends BaseMapper<SvyUserWishRequestResult> {

    /**
     * 根据wishCount倒序分页查询
     *
     * @param start
     * @param count
     * @return
     */
    List<SvyUserWishRequestResult> findSvyUserWishRequestResultByOrderCount(@Param("start") Integer start, @Param("count") Integer count);

    /**
     * 根据 艺人id和城市id查询
     *
     * @param wishArtistId
     * @param wishCityId
     * @return
     */
    SvyUserWishRequestResult findByWishArtistIdAndWishCityId(@Param("wishArtistId") Integer wishArtistId, @Param("wishCityId") Integer wishCityId);


    /**
     * 查询最新的版本的统计结果  按艺人维度统计票数排序
     *
     * @param versionCode
     * @param start
     * @param count
     * @return
     */
    List<Map> findMapByOrderCountAndGroupArtistAndVersionCode(@Param("versionCode") String versionCode, @Param("start") Integer start, @Param("count") Integer count);

    /**
     * 根据心动艺人id查询城市的排名 倒序
     *
     * @param wishArtistId
     * @param start
     * @param count
     * @return
     */
    List<SvyUserWishRequestResult> findByWishArtistId(@Param("wishArtistId") Integer wishArtistId,@Param("versionCode") String versionCode, @Param("start") Integer start, @Param("count") Integer count);


    /**
     * 查询某版本的根据city排序艺人
     *
     * @param wishCityId
     * @param versionCode
     * @return
     */
    List<SvyUserWishRequestResult> findByWishCityIdAndVersionCode(@Param("wishCityId") Integer wishCityId, @Param("versionCode") String versionCode, @Param("start") Integer start, @Param("count") Integer count);
}